package other.barcode;

import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;

/**
 * @author bingo
 * @Description
 * @Date 2018/7/23
 */
public class BarcodeBuffer {

    /**阻塞队列*/
    private static BlockingQueue<String> queue=new LinkedBlockingQueue<String>();
    /**
     * 生产一条数据，此方法由BarcodeProducter调用
     * @param barcode
     */
    public static void product(String barcode){
        queue.add(barcode);
    }
    /**
     * 消费一条数据，如果队列中没有数据，此方法阻塞等待数据的到来，此方法由BarcodeConsumer调用
     * @return
     */
    public static String consume() throws InterruptedException{
        return queue.take();
    }
}
